/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ProyectoBienestarUniversitarioComfenalcoCulturalis.src.java.mvc.dao;

import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.LinkedList;
import mvc.modelos.GrupoFamiliar;

/**
 *
 * @author pezcado
 */
public class GrupoFamiliarDAO extends Model implements IDAO<GrupoFamiliar> {
    
    private PreparedStatement consultar;
    private PreparedStatement insertar;
    private PreparedStatement modificar;
    private PreparedStatement eliminar;
    private PreparedStatement listar;
    private Model model;

    public GrupoFamiliar consultar(int id) throws SQLException {
        model= model.getInstance();
        String sql="select nombre, apellido, parentesco, direccion, telefono, hojaDeVidaCodigo, id, estado,"
                + "descripcion from GrupoFamiliar where id="+id;
        consultar=model.getCon().prepareStatement(sql);
        ResultSet resultSet= consultar.executeQuery();
        GrupoFamiliar grupoFamiliar= new GrupoFamiliar();
            
        try{
            resultSet.next();
            
            grupoFamiliar.setNombre(resultSet.getString("nombre"));
            grupoFamiliar.setApellido(resultSet.getString("apellido"));
            grupoFamiliar.setParentesco(resultSet.getString("parentesco"));
            grupoFamiliar.setDireccion(resultSet.getString("direccion"));
            grupoFamiliar.setTelefono(resultSet.getString("telefono"));
            grupoFamiliar.setHojaDeVidaCodigo(resultSet.getInt("hojaDeVidaCodigo"));
            grupoFamiliar.setId(resultSet.getInt("id"));
            grupoFamiliar.setEstado(resultSet.getString("estado"));
            grupoFamiliar.setDescripcion(resultSet.getString("descripcion"));
            
            //return grupoFamiliar;
        }catch(Exception e){
            
        }
        return grupoFamiliar;
    }

    public void insertar(GrupoFamiliar IDAO) throws SQLException {
        model= model.getInstance();
        if(insertar==null){
            String sql="inser into GrupoFamiliar values(?,?,?,?,?,?,?,?,?)";
            insertar= model.getCon().prepareStatement(sql);
        }
        insertar.setString(1, IDAO.getNombre());
        insertar.setString(2, IDAO.getApellido());
        insertar.setString(3, IDAO.getParentesco());
        insertar.setString(4, IDAO.getDireccion());
        insertar.setString(5, IDAO.getTelefono());
        insertar.setInt(6, IDAO.getHojaDeVidaCodigo());
        insertar.setInt(7, IDAO.getId());
        insertar.setString(8, IDAO.getEstado());
        insertar.setString(9, IDAO.getDescripcion());
        
        insertar.executeUpdate();
    }

    public void modificar(GrupoFamiliar IDAO) throws SQLException {
        model= model.getInstance();
        String sql="update GrupoFamiliar set"
                + "nombre='"+IDAO.getNombre()+"',"
                + "apellido='"+IDAO.getApellido()+"',"
                + "parentesco='"+IDAO.getParentesco()+"',"
                + "direccion='"+IDAO.getDireccion()+"',"
                + "telefono='"+IDAO.getTelefono()+"',"
                + "estado='"+IDAO.getEstado()+"',"
                + "descripcion='"+IDAO.getDescripcion()+"',"
                + "where id="+IDAO.getId();
        
        modificar=model.getCon().prepareStatement(sql);
        modificar.executeUpdate();
    }

    public void eliminar(GrupoFamiliar IDAO) throws SQLException {
        model= model.getInstance();
        String sql="delete from GrupoFamiliar where id="+IDAO.getId();
        eliminar=model.getCon().prepareStatement(sql);
        
        eliminar.executeUpdate();
    }

    public LinkedList<GrupoFamiliar> listar() throws SQLException {
        throw new UnsupportedOperationException("Not supported yet.");
    }
    
}
